package br.com.cqipac.to;

// Generated 24/06/2008 08:32:05 by Hibernate Tools 3.2.1.GA

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * NaoConformidade generated by hbm2java
 */
@Entity
@Table(name = "tb_nao_conformidade", catalog = "db_cq_ipac")
public class NaoConformidade implements java.io.Serializable {

	private Integer codNaoConformidade;
	private Setor setorByCodSetorCausador;
	private TipoNaoConformidade tipoNaoConformidade;
	private Funcionario funcionario;
	private Setor setorByCodSetorIdentificante;
	private String desNaoConformidade;
	private String desOrdemServico;
	private Boolean stsVistoQualidade;
	private Date dtAbertura;
	private Date dtVistoQualidade;

	public NaoConformidade() {
	}

	public NaoConformidade(Setor setorByCodSetorCausador,
			TipoNaoConformidade tipoNaoConformidade, Funcionario funcionario,
			String desNaoConformidade, Date dtAbertura) {
		this.setorByCodSetorCausador = setorByCodSetorCausador;
		this.tipoNaoConformidade = tipoNaoConformidade;
		this.funcionario = funcionario;
		this.desNaoConformidade = desNaoConformidade;
		this.dtAbertura = dtAbertura;
	}

	public NaoConformidade(Setor setorByCodSetorCausador,
			TipoNaoConformidade tipoNaoConformidade, Funcionario funcionario,
			Setor setorByCodSetorIdentificante, String desNaoConformidade,
			String desOrdemServico, Boolean stsVistoQualidade, Date dtAbertura,
			Date dtVistoQualidade) {
		this.setorByCodSetorCausador = setorByCodSetorCausador;
		this.tipoNaoConformidade = tipoNaoConformidade;
		this.funcionario = funcionario;
		this.setorByCodSetorIdentificante = setorByCodSetorIdentificante;
		this.desNaoConformidade = desNaoConformidade;
		this.desOrdemServico = desOrdemServico;
		this.stsVistoQualidade = stsVistoQualidade;
		this.dtAbertura = dtAbertura;
		this.dtVistoQualidade = dtVistoQualidade;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "cod_nao_conformidade", unique = true, nullable = false)
	public Integer getCodNaoConformidade() {
		return this.codNaoConformidade;
	}

	public void setCodNaoConformidade(Integer codNaoConformidade) {
		this.codNaoConformidade = codNaoConformidade;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "cod_setor_causador", nullable = false)
	public Setor getSetorByCodSetorCausador() {
		return this.setorByCodSetorCausador;
	}

	public void setSetorByCodSetorCausador(Setor setorByCodSetorCausador) {
		this.setorByCodSetorCausador = setorByCodSetorCausador;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "cod_tipo_nao_conformidade", nullable = false)
	public TipoNaoConformidade getTipoNaoConformidade() {
		return this.tipoNaoConformidade;
	}

	public void setTipoNaoConformidade(TipoNaoConformidade tipoNaoConformidade) {
		this.tipoNaoConformidade = tipoNaoConformidade;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "cod_funcionario_identificante", nullable = false)
	public Funcionario getFuncionario() {
		return this.funcionario;
	}

	public void setFuncionario(Funcionario funcionario) {
		this.funcionario = funcionario;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "cod_setor_identificante")
	public Setor getSetorByCodSetorIdentificante() {
		return this.setorByCodSetorIdentificante;
	}

	public void setSetorByCodSetorIdentificante(
			Setor setorByCodSetorIdentificante) {
		this.setorByCodSetorIdentificante = setorByCodSetorIdentificante;
	}

	@Column(name = "des_nao_conformidade", nullable = false, length = 200)
	public String getDesNaoConformidade() {
		return this.desNaoConformidade;
	}

	public void setDesNaoConformidade(String desNaoConformidade) {
		this.desNaoConformidade = desNaoConformidade;
	}

	@Column(name = "des_ordem_servico", length = 45)
	public String getDesOrdemServico() {
		return this.desOrdemServico;
	}

	public void setDesOrdemServico(String desOrdemServico) {
		this.desOrdemServico = desOrdemServico;
	}

	@Column(name = "sts_visto_qualidade")
	public Boolean getStsVistoQualidade() {
		return this.stsVistoQualidade;
	}

	public void setStsVistoQualidade(Boolean stsVistoQualidade) {
		this.stsVistoQualidade = stsVistoQualidade;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "dt_abertura", nullable = false, length = 19)
	public Date getDtAbertura() {
		return this.dtAbertura;
	}

	public void setDtAbertura(Date dtAbertura) {
		this.dtAbertura = dtAbertura;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "dt_visto_qualidade", length = 19)
	public Date getDtVistoQualidade() {
		return this.dtVistoQualidade;
	}

	public void setDtVistoQualidade(Date dtVistoQualidade) {
		this.dtVistoQualidade = dtVistoQualidade;
	}

}
